﻿//-------------------------------------------------------------------
//	Copyright (c) 2010-2014  Zhirnov Andrey
//	This file is part of the "UX Standard Lib" project.
//	See copyright notice in "UX_STL_Core.h".
//-------------------------------------------------------------------

#ifdef __UX_STL_UNIT_TEST__

//#define PLATFORM_SDL
#include "../ux_stl_core.h"


using namespace UX_STL;
using namespace UXTypes;
using namespace UXMath;

extern void Test_Containers_Queue ();
extern void Test_Types_FileAddress ();
extern void Test_Types_Function ();
extern void Test_Types_StringParser ();
extern void Test_Math_Color ();
extern void Test_Types_Dimensions_PhysicsValue ();
extern void Test_Temp ();	// temporary tests
extern void Test_CompileTime_TypeInfo ();
extern void Test_CompileTime_TypeList ();
extern void Test_CompileTime_TypeTraits ();


void Test0 ()
{
	Test_Temp();
	Test_Math_Color();
	Test_Types_StringParser();
	Test_Types_Function();
	Test_Types_FileAddress();
	Test_Containers_Queue();
	Test_CompileTime_TypeInfo();
	Test_CompileTime_TypeList();
	Test_CompileTime_TypeTraits();
	Test_Types_Dimensions_PhysicsValue();
}



#ifdef PLATFORM_ANDROID

void AndMain()
{
	Test0();
}

#endif	// PLATFORM_ANDROID



#ifdef PLATFORM_WINDOWS

using namespace winapi;

int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
	Test0();
	return 0;
}

#endif	// PLATFORM_WINDOWS

#endif	// __UX_STL_UNIT_TEST__
